package com.business.user.mapper;

import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.business.user.entity.UserDetails;
import com.business.user.entity.vo.UserVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 用户详细信息表:数据层
 * @author chenjiehong
 * @date 2019-12-03 10:07:50
 * @since 1.0
 */
public interface UserDetailsMapper extends BaseMapper<UserDetails> {


    /**
     * 查询用户类型
     * @param userId
     * @return
     */
    Integer getType(@Param("userId")Integer userId);

    /**
     * 查询用户头像
     * @param userId
     * @return
     */
    String getHeadUrl(@Param("userId")Integer userId);

    /**
     * 查询用户名片
     * @param userId
     * @return
     */
    String getCardUrl(@Param("userId")Integer userId);

    /**
     * 修改头像地址
     * @param userId
     * @param headUrl
     * @return
     */
    Integer updateHeadImage(@Param("userId")Integer userId,@Param("headUrl")String headUrl);



    /**
     * 查询关注列表
     * @param ew
     * @return
     */
    List<UserVo> queryFriendPage(@Param("page") Page<UserDetails> page, @Param("ew") EntityWrapper<UserDetails> ew);


    /**
     * 查询被关注列表
     * @param ew
     * @return
     */
    List<UserVo> queryFansPage(@Param("page") Page<UserDetails> page, @Param("ew")EntityWrapper<UserDetails> ew);


    /**
     * 查询列表
     * @param ew
     * @return
     */
    List<UserVo> queryPage(@Param("page") Page<UserDetails> page, @Param("ew")EntityWrapper<UserDetails> ew, @Param("userId") Integer  userId);


    /**
     * 查询推荐列表
     * @param ew
     * @return
     */
    List<UserVo> queryRecommendUserPage(@Param("page") Page<UserDetails> page, @Param("ew")EntityWrapper<UserDetails> ew, @Param("userId") Integer  userId);




    /**
     * 查询标签
     * @param userId
     * @return
     */
    String getTags(@Param("userId")Integer userId);
}
